home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / ast_comp / concurre.tar / concurrency / monoidal.tex / node8_mn.html < prev    next >
Text File  |  1993-07-05  |  28KB  |  349 lines

  1.  
  2. <H1><A ID="SECTION00040000000000000000">
  3. C<SMALL>ONCURRENCY</SMALL></A>
  4. </H1>
  5.  
  6. <P>
  7. This section presents  an   attempt to  relate the   monoidal   closed
  8. category  of stable  event   structures  to  the  category  of   event
  9. structures for  modeling  concurrency. 
  10. We show that there is an adjunction between the two categories when the
  11. event structures are restricted to coherent spaces.  
  12. We also indicate where the difficulty is in trying to 
  13. generalize this result. 
  14.  
  15. <P>
  16. A coherent space is a special kind of stable event structure 
  17. <tex2html_verbatim_mark>#math222#(<I>E</I>, <I>C</I><I>on</I>, <tex2html_image_mark>#tex2html_wrap_inline3507# ) where <I>C</I><I>on</I> is determined by a 
  18. symmetric, irreflexive relation # (the conflict relation), and
  19. <tex2html_image_mark>#tex2html_wrap_inline3511# is trivial in the sense that for every event <I>e</I>∈<I>E</I>,
  20. we have <tex2html_verbatim_mark>#math223#∅ <tex2html_image_mark>#tex2html_wrap_inline3514# <I>e</I>. Thus we say a set of events <I>X</I>
  21. consistent if <tex2html_verbatim_mark>#math224#∀<I>e</I>, <I>e'</I>∈<I>X</I>.  ¬(<I>e</I>#<I>e'</I>).
  22. For technical reasons, here we allow <I>E</I> to be any set.
  23. It is convenient to write a coherent space in the form
  24. (<I>E</I>,#) since the enabling relation is trivial.
  25.  
  26. <P>
  27. It is well-known that coherent spaces with linear maps
  28. form a  monoidal closed category.
  29. The linear maps are exactly the same as those on stable event
  30. structures (but restricted to coherent spaces).
  31.  
  32. <P>
  33. <P><DIV><#3520#><B>Definition  4.1</B><#3520#>   
  34. <#3523#><I>Let 
  35. <tex2html_verbatim_mark>#math225#<tex2html_image_mark>#tex2html_wrap_inline3525# = (<I>E</I><SUB>0</SUB>,#<SUB>0</SUB>),
  36. <tex2html_verbatim_mark>#math226#<tex2html_image_mark>#tex2html_wrap_inline3527# = (<I>E</I><SUB>1</SUB>,#<SUB>1</SUB>)
  37.  be coherent spaces.  A linear map from
  38. <tex2html_verbatim_mark>#math227#<tex2html_image_mark>#tex2html_wrap_inline3529# to <tex2html_verbatim_mark>#math228#<tex2html_image_mark>#tex2html_wrap_inline3531# is a  relation <tex2html_verbatim_mark>#math229#<I>R</I>⊆<I>E</I><SUB>0</SUB>×<I>E</I><SUB>1</SUB> which satisfies 
  39. </I><P><tex2html_verbatim_mark>#math230#</P><DIV ALIGN="CENTER">
  40. <TABLE>
  41. <TR VALIGN="MIDDLE"><TD ALIGN="LEFT">1.  (<I>e</I><SUB>0</SUB><I>Re</I><SUB>1</SUB>  <tex2html_ampersand_mark>  <I>e</I><SUB>0</SUB>'<I>Re</I><SUB>1</SUB>'  <tex2html_ampersand_mark>  <I>e</I><SUB>1</SUB>#<I>e</I><SUB>1</SUB>') <tex2html_image_mark>#tex2html_wrap_indisplay3535# <I>e</I><SUB>0</SUB>#<I>e</I><SUB>0</SUB>',</TD>
  42. </TR>
  43. <TR VALIGN="MIDDLE"><TD ALIGN="LEFT">2.  [<I>e</I><SUB>0</SUB><I>Re</I>  <tex2html_ampersand_mark>  <I>e</I><SUB>0</SUB>'<I>Re</I>  <tex2html_ampersand_mark>  ¬(<I>e</I><SUB>0</SUB>#<I>e</I><SUB>0</SUB>')] <tex2html_image_mark>#tex2html_wrap_indisplay3537# <I>e</I><SUB>0</SUB> = <I>e</I><SUB>0</SUB>'.</TD>
  44. </TR>
  45. </TABLE>
  46. </DIV><P></P><I></I><#3523#></DIV><P></P>
  47.  
  48.  
  49. <P>
  50. Note that the   completeness axiom as  required  for a  linear map 
  51. (see Definition 3.5) is
  52. vacuously true. 
  53.  
  54. <P>
  55. The  category  of   event   structures which  gives   non-interleaving
  56. semantics  to concurrent languages  like CCS  has  a different kind of
  57. morphisms: the   <#520#><EM>partially synchronous   morphisms</EM><#520#> [Wi87], [Wi88].  
  58. There  are
  59. constructions of product and  coproduct  in this category,  which  are
  60. used to model parallel composition and nondeterministic choices of CCS
  61. like processes.   Originally the objects of  this  category are stable
  62. event   structures.    When   restricted  to  coherent  spaces,
  63. partially synchronous morphisms can be simplified as follows.
  64.  
  65. <P>
  66. <P><DIV><#3539#><B>Definition  4.2</B><#3539#>   
  67. <#3542#><I>Let 
  68. <tex2html_verbatim_mark>#math231#<tex2html_image_mark>#tex2html_wrap_inline3544# = (<I>E</I><SUB>0</SUB>,#<SUB>0</SUB>),
  69. <tex2html_verbatim_mark>#math232#<tex2html_image_mark>#tex2html_wrap_inline3546# = (<I>E</I><SUB>1</SUB>,#<SUB>1</SUB>)
  70.  be coherent spaces.  A partially synchronous morphism from
  71. <tex2html_verbatim_mark>#math233#<tex2html_image_mark>#tex2html_wrap_inline3548# to <tex2html_verbatim_mark>#math234#<tex2html_image_mark>#tex2html_wrap_inline3550# is a  partial function
  72. <tex2html_verbatim_mark>#math235#<I>θ</I> : <I>E</I><SUB>0</SUB>→<I>E</I><SUB>1</SUB> which satisfies 
  73. </I><P><tex2html_verbatim_mark>#math236#</P><DIV ALIGN="CENTER">
  74. <TABLE>
  75. <TR VALIGN="MIDDLE"><TD ALIGN="LEFT">1.  <I>θ</I>(<I>e</I>)#<I>θ</I>(<I>e'</I>) <tex2html_image_mark>#tex2html_wrap_indisplay3554# <I>e</I>#<I>e'</I>,</TD>
  76. </TR>
  77. <TR VALIGN="MIDDLE"><TD ALIGN="LEFT">2.  [<I>θ</I>(<I>e</I>) = <I>θ</I>(<I>e'</I>)  <tex2html_ampersand_mark>  ¬(<I>e</I>#<I>e'</I>)] <tex2html_image_mark>#tex2html_wrap_indisplay3556# <I>e</I> = <I>e'</I>.</TD>
  78. </TR>
  79. </TABLE>
  80. </DIV><P></P><I></I><#3542#></DIV><P></P>
  81.  
  82.  
  83. <P>
  84. Note that by convention when we write 
  85. <tex2html_verbatim_mark>#math237#<I>θ</I>(<I>e</I>)#<I>θ</I>(<I>e'</I>) or <tex2html_verbatim_mark>#math238#<I>θ</I>(<I>e</I>) = <I>θ</I>(<I>e'</I>),
  86.  <tex2html_verbatim_mark>#math239#<I>θ</I>(<I>e</I>) and <tex2html_verbatim_mark>#math240#<I>θ</I>(<I>e'</I>) are both defined.
  87.  
  88. <P>
  89. Comparing the  definition  of a  linear  map to  that of   a partially
  90. synchronous morphism, one  can  see  that  partially   synchronous
  91. morphisms are special kind of linear maps. The only difference between
  92. these two notions is that  a linear  map is determined  by a relation,
  93. while  a partially  synchronous morphism is   determined by a  partial
  94. function.
  95.  
  96. <P>
  97. The reason for  using a (partial) function for   a partially synchronous
  98. morphism may be traced back to  the synchronization  mechanism for CCS
  99. processes.  The  synchronization of  two CCS processes  is achieved by
  100. communication through  handshake,   an indivisible action in  which  a
  101. message is  simultaneously emitted by  one process and received by the
  102. other [Mi89]. Handshakes happen between two parties only.   CCS does not
  103. allow a party to handshake with more than one party at a given time.
  104. Therefore,  the `communication partner  of'   a  process determines  a
  105. partial function.
  106.  
  107. <P>
  108. From a concurrency point of view, a linear map
  109. supports  the synchronization of more
  110. than two events.  Two pairs of  events <tex2html_verbatim_mark>#math241#( <I>e</I>, <I>e</I><SUB>1</SUB> ),  <tex2html_verbatim_mark>#math242#( <I>e</I>, <I>e</I><SUB>2</SUB> ) in the relation <I>R</I> can be understood as  the synchronization
  111. of the  event  <I>e</I> with <I>e</I><SUB>1</SUB> and <I>e</I><SUB>2</SUB>.  There are  many  practical
  112. examples of synchronization among more than two parties.  A conference
  113. call enabled by a telephone company is one such example.
  114.  
  115. <P>
  116. However, linear maps seem to allow more than that. Potentially, one 
  117. event can synchronize with infinitely many other events.
  118. Consider the following sequence of relations between
  119. a coherent space with a single event <I>e</I> and one 
  120. with the event set <I>ω</I> and the empty conflict relation:
  121. <P><tex2html_verbatim_mark>#math243#</P><DIV ALIGN="CENTER">
  122. <TABLE>
  123. <TR VALIGN="MIDDLE"><TD ALIGN="LEFT"><I>R</I><SUB>0</SUB> = ∅,</TD>
  124. </TR>
  125. <TR VALIGN="MIDDLE"><TD ALIGN="LEFT"><I>R</I><SUB>1</SUB> = {(<I>e</I>, 0)},</TD>
  126. </TR>
  127. <TR VALIGN="MIDDLE"><TD ALIGN="LEFT"><SUP> ... </SUP>,</TD>
  128. </TR>
  129. <TR VALIGN="MIDDLE"><TD ALIGN="LEFT"><I>R</I><SUB>i</SUB> = {(<I>e</I>, <I>j</I>) | <I>j</I> ;SPMlt; <I>i</I>},</TD>
  130. </TR>
  131. <TR VALIGN="MIDDLE"><TD ALIGN="LEFT"><SUP> ... </SUP></TD>
  132. </TR>
  133. </TABLE>
  134. </DIV><P></P>
  135. Each <I>R</I><SUB>i</SUB> corresponds to a linear map, and the subset relation
  136. on them specifies the stable order.
  137. Therefore, the least upper bound (in the linear function space)
  138. of the sequence <I>R</I><SUB>i</SUB> is 
  139. <tex2html_verbatim_mark>#math244#{(<I>e</I>, <I>j</I>) | <I>j</I>∈<I>ω</I>}.
  140.  
  141. <P>
  142. Our purpose  is to establish an  adjunction  between   the category of
  143. coherent spaces with partial synchronous morphisms  (written as
  144. <#534#><B>CPS</B><#534#>) and the category of coherent spaces with  linear maps
  145. (written as  <#535#><B>CLI</B><#535#>).  The  foregoing discussions  suggest that   we
  146. should find a construction <tex2html_image_mark>#tex2html_wrap_inline3579# 
  147. on coherent spaces <tex2html_verbatim_mark>#math245#<tex2html_image_mark>#tex2html_wrap_inline3581# such that
  148. <P><tex2html_verbatim_mark>#math246#</P><DIV ALIGN="CENTER">
  149. <tex2html_image_mark>#tex2html_wrap_indisplay3583#→<SUB>lin</SUB><tex2html_image_mark>#tex2html_wrap_indisplay3584#≅<tex2html_image_mark>#tex2html_wrap_indisplay3585#→<SUB>ps</SUB>(<tex2html_image_mark>#tex2html_wrap_indisplay3586#<tex2html_image_mark>#tex2html_wrap_indisplay3587#),
  150. </DIV><P></P>
  151. where
  152. <tex2html_verbatim_mark>#math247#<tex2html_image_mark>#tex2html_wrap_inline3589#→<SUB>lin</SUB><tex2html_image_mark>#tex2html_wrap_inline3590# stands for the set
  153. of linear maps from <tex2html_verbatim_mark>#math248#<tex2html_image_mark>#tex2html_wrap_inline3592# to <tex2html_verbatim_mark>#math249#<tex2html_image_mark>#tex2html_wrap_inline3594#, and
  154. <tex2html_verbatim_mark>#math250#<tex2html_image_mark>#tex2html_wrap_inline3596#→<SUB>ps</SUB>(<tex2html_image_mark>#tex2html_wrap_inline3597#<tex2html_image_mark>#tex2html_wrap_inline3598#)
  155. stands for the set of partial synchronous morphisms form
  156. <tex2html_verbatim_mark>#math251#<tex2html_image_mark>#tex2html_wrap_inline3600# to <tex2html_verbatim_mark>#math252#<tex2html_image_mark>#tex2html_wrap_inline3602#<tex2html_image_mark>#tex2html_wrap_inline3603#.
  157. With respect to the example mentioned in the
  158. previous paragraph,
  159. the linear map <tex2html_verbatim_mark>#math253#{(<I>e</I>, <I>j</I>) | <I>j</I>∈<I>ω</I>} should correspond
  160. to some kind of partial synchronous morphism <tex2html_verbatim_mark>#math254#{(<I>e</I>, <I>ω</I>)}.
  161. This implies that the events of <tex2html_verbatim_mark>#math255#<tex2html_image_mark>#tex2html_wrap_inline3607#<tex2html_image_mark>#tex2html_wrap_inline3608# should be
  162. non-empty, consistent subsets of <I>E</I><SUB>1</SUB> -- not merely finite consistent subsets.
  163. This is exactly the technical reason that takes us out of countable
  164. event sets.
  165.  
  166. <P>
  167. <P><DIV><#3611#><B>Definition  4.3</B><#3611#>   
  168. <#3614#><I>Let <tex2html_verbatim_mark>#math256#<tex2html_image_mark>#tex2html_wrap_inline3616# = (<I>E</I>,#) be a coherent space.
  169. Define <tex2html_verbatim_mark>#math257#<tex2html_image_mark>#tex2html_wrap_inline3618#<tex2html_image_mark>#tex2html_wrap_inline3619# to be the coherent space
  170. <tex2html_verbatim_mark>#math258#(<I>E'</I>,#'), where
  171. </I><P><tex2html_verbatim_mark>#math259#</P><DIV ALIGN="CENTER">
  172. <TABLE>
  173. <TR VALIGN="MIDDLE"><TD ALIGN="LEFT"><I>E'</I> = {<I>x</I> | <I>x</I>⊆<I>E</I>  <tex2html_ampersand_mark>  <I>x</I> <tex2html_image_mark>#tex2html_wrap_indisplay3623#∅  <tex2html_ampersand_mark>  ∀<I>e</I>, <I>e'</I>∈<I>x</I>.¬(<I>e</I>#<I>e'</I>)},</TD>
  174. </TR>
  175. <TR VALIGN="MIDDLE"><TD ALIGN="LEFT"><I>x</I>#'<I>y</I> <tex2html_image_mark>#tex2html_wrap_indisplay3625# [(<I>x</I>∩<I>y</I> <tex2html_image_mark>#tex2html_wrap_indisplay3626#∅  <tex2html_ampersand_mark>  <I>x</I> <tex2html_image_mark>#tex2html_wrap_indisplay3627#<I>y</I>)  <I>or</I>  ∃<I>e</I>∈<I>x</I>∃<I>e'</I>∈<I>y</I>.<I>e</I>#<I>e'</I>].</TD>
  176. </TR>
  177. </TABLE>
  178. </DIV><P></P><I></I><#3614#></DIV><P></P>
  179.  
  180.  
  181. <P>
  182. Now we are in a position to prove the following theorem.
  183.  
  184. <P>
  185. <P><DIV><#3629#><B>Theorem  4.1</B><#3629#>   
  186. <#3632#><I>For coherent spaces <tex2html_verbatim_mark>#math260#<tex2html_image_mark>#tex2html_wrap_inline3634# = (<I>E</I><SUB>0</SUB>,#<SUB>0</SUB>) and <tex2html_verbatim_mark>#math261#<tex2html_image_mark>#tex2html_wrap_inline3636# = (<I>E</I><SUB>1</SUB>,#<SUB>1</SUB>),
  187. we have
  188. </I><P><tex2html_verbatim_mark>#math262#</P><DIV ALIGN="CENTER">
  189. <tex2html_image_mark>#tex2html_wrap_indisplay3638#→<SUB>lin</SUB><tex2html_image_mark>#tex2html_wrap_indisplay3639#≅<tex2html_image_mark>#tex2html_wrap_indisplay3640#→<SUB>ps</SUB>(<tex2html_image_mark>#tex2html_wrap_indisplay3641#<tex2html_image_mark>#tex2html_wrap_indisplay3642#).
  190. </DIV><P></P><I></I><#3632#></DIV><P></P>
  191.  
  192.  
  193. <P>
  194. <#575#><B>Proof    </B><#575#>  For   any     linear  map   <tex2html_verbatim_mark>#math263#<I>R</I> : <tex2html_image_mark>#tex2html_wrap_inline3644#→<tex2html_image_mark>#tex2html_wrap_inline3645#, let <P><tex2html_verbatim_mark>#math264#</P><DIV ALIGN="CENTER">
  195. <I>f</I> (<I>R</I>) : <I>E</I><SUB>0</SUB>→{<I>x</I> | <I>x</I>⊆<I>E</I>  <tex2html_ampersand_mark>  <I>x</I> <tex2html_image_mark>#tex2html_wrap_indisplay3647#∅  <tex2html_ampersand_mark>  ∀<I>e</I>, <I>e'</I>∈<I>x</I>.¬(<I>e</I>#<I>e'</I>)}
  196. </DIV><P></P> be  
  197. a partial  function such that  <I>f</I> (<I>R</I>)(<I>e</I>) is  defined to be <tex2html_verbatim_mark>#math265#{<I>e'</I> | <I>e'</I>∈<I>E</I><SUB>1</SUB>  <tex2html_ampersand_mark>  <I>eRe'</I>} if it is not  empty.  
  198. Clearly <I>f</I> (<I>R</I>)(<I>e</I>) is consistent.
  199. We show that
  200. <I>f</I> (<I>R</I>) is a  partially synchronous morphism  from <tex2html_verbatim_mark>#math266#<tex2html_image_mark>#tex2html_wrap_inline3653# to
  201. <tex2html_verbatim_mark>#math267#<tex2html_image_mark>#tex2html_wrap_inline3655#<tex2html_image_mark>#tex2html_wrap_inline3656#.    Assume  <tex2html_verbatim_mark>#math268#<I>f</I> (<I>R</I>)(<I>e</I>)#<I>f</I> (<I>R</I>)(<I>e'</I>).  By 
  202. Definition 4.3, either there exist  <tex2html_verbatim_mark>#math269#<I>a</I>∈<I>f</I> (<I>R</I>)(<I>e</I>) and <tex2html_verbatim_mark>#math270#<I>b</I>∈<I>f</I> (<I>R</I>)(<I>e'</I>) such that <I>a</I>#<SUB>1</SUB><I>b</I>, or <I>f</I> (<I>R</I>)(<I>e</I>) and <I>f</I> (<I>R</I>)(<I>e'</I>) are different
  203. sets with a non-empty intersection.  For the first case we have <I>e</I>#<SUB>0</SUB><I>e'</I>, by the properties of <I>R</I>.  For the second case,  there must be an
  204. <I>a</I>∈<I>E</I><SUB>1</SUB> such that <I>eRa</I> and <I>e'Ra</I>. Again by the  properties of
  205. <I>R</I>, we must have <I>e</I>#<SUB>0</SUB><I>e'</I> since <tex2html_verbatim_mark>#math271#<I>f</I> (<I>R</I>)(<I>e</I>) <tex2html_image_mark>#tex2html_wrap_inline3671#<I>f</I> (<I>R</I>)(<I>e'</I>) implies
  206. <tex2html_verbatim_mark>#math272#<I>e</I> <tex2html_image_mark>#tex2html_wrap_inline3673#<I>e'</I>.    We  also have  <P><tex2html_verbatim_mark>#math273#</P><DIV ALIGN="CENTER">
  207. [<I>f</I> (<I>R</I>)(<I>e</I>) = <I>f</I> (<I>R</I>)(<I>e'</I>)  <tex2html_ampersand_mark>  ¬(<I>e</I>#<SUB>0</SUB><I>e'</I>)] <tex2html_image_mark>#tex2html_wrap_indisplay3675# <I>e</I> = <I>e'</I>
  208. </DIV><P></P> since <tex2html_verbatim_mark>#math274#<I>f</I> (<I>R</I>)(<I>e</I>) = <I>f</I> (<I>R</I>)(<I>e'</I>) implies  the
  209. non-emptyness of <I>f</I> (<I>R</I>)(<I>e</I>).   Therefore, <I>f</I> (<I>R</I>) is   indeed a  partially
  210. synchronous morphism.
  211.  
  212. <P>
  213. On the other hand, for any 
  214. partially synchronous morphism <tex2html_verbatim_mark>#math275#<I>θ</I> : <tex2html_image_mark>#tex2html_wrap_inline3680#→<tex2html_image_mark>#tex2html_wrap_inline3681#<tex2html_image_mark>#tex2html_wrap_inline3682#,
  215. let <tex2html_verbatim_mark>#math276#<I>g</I>(<I>θ</I>)⊆<I>E</I><SUB>0</SUB>→<I>E</I><SUB>1</SUB> be a  relation  such that <tex2html_verbatim_mark>#math277#(<I>e</I>, <I>e'</I>)∈<I>g</I>(<I>θ</I>) if  and only if <tex2html_verbatim_mark>#math278#<I>e'</I>∈<I>θ</I>(<I>e</I>).  We show that
  216. <tex2html_verbatim_mark>#math279#<I>g</I>(<I>θ</I>) is   a linear   map    from   <tex2html_verbatim_mark>#math280#<tex2html_image_mark>#tex2html_wrap_inline3688# to
  217. <tex2html_verbatim_mark>#math281#<tex2html_image_mark>#tex2html_wrap_inline3690#.  Assume <tex2html_verbatim_mark>#math282#(<I>e</I><SUB>0</SUB>, <I>e</I><SUB>1</SUB>),(<I>e</I><SUB>0</SUB>', <I>e</I><SUB>1</SUB>')∈<I>g</I>(<I>θ</I>)
  218. and <tex2html_verbatim_mark>#math283#<I>e</I><SUB>1</SUB>#<SUB>1</SUB><I>e</I><SUB>1</SUB>'. By  Definition 4.3, <tex2html_verbatim_mark>#math284#<I>θ</I>(<I>e</I><SUB>0</SUB>)#<I>θ</I>(<I>e</I><SUB>0</SUB>'). Since <I>θ</I> is a partially  synchronous morphism, we
  219. have <tex2html_verbatim_mark>#math285#<I>e</I><SUB>0</SUB>#<SUB>0</SUB><I>e</I><SUB>0</SUB>'.
  220. We now check that
  221. <P><tex2html_verbatim_mark>#math286#</P><DIV ALIGN="CENTER">
  222. [(<I>e</I><SUB>0</SUB>, <I>e</I>),(<I>e</I><SUB>0</SUB>', <I>e</I>)∈<I>g</I>(<I>θ</I>)  <tex2html_ampersand_mark>  ¬(<I>e</I><SUB>0</SUB>#<SUB>1</SUB><I>e</I><SUB>0</SUB>')] <tex2html_image_mark>#tex2html_wrap_indisplay3697# <I>e</I><SUB>0</SUB> = <I>e</I><SUB>0</SUB>'.
  223. </DIV><P></P>
  224. This is because the given conditions imply 
  225. <tex2html_verbatim_mark>#math287#<I>θ</I>(<I>e</I><SUB>0</SUB>)∩<I>θ</I>(<I>e</I><SUB>0</SUB>') <tex2html_image_mark>#tex2html_wrap_inline3699#∅ 
  226. and <tex2html_verbatim_mark>#math288#¬(<I>θ</I>(<I>e</I><SUB>0</SUB>)#<I>θ</I>(<I>e</I><SUB>0</SUB>').
  227. This is only possible when <tex2html_verbatim_mark>#math289#<I>θ</I>(<I>e</I><SUB>0</SUB>) = <I>θ</I>(<I>e</I><SUB>0</SUB>'), which in turn
  228. implies <I>e</I><SUB>0</SUB> = <I>e</I><SUB>0</SUB>'.
  229.  
  230. <P>
  231. It is now a relatively easy task to check that <I>f</I> and <I>g</I>
  232. indeed give rise to the desired isomorphism.
  233. <tex2html_image_mark>#tex2html_wrap_inline3706#
  234.  
  235. <P>
  236. The consequence of this result, put in categorical terms, 
  237. is that the forgetful functor <tex2html_verbatim_mark>#math290#<I>U</I> : <tex2html_image_mark>#tex2html_wrap_inline3708#→<tex2html_image_mark>#tex2html_wrap_inline3709#
  238. has a left adjoint <tex2html_verbatim_mark>#math291#<I>F</I> : <tex2html_image_mark>#tex2html_wrap_inline3711#→<tex2html_image_mark>#tex2html_wrap_inline3712# as
  239. specified below.
  240.  
  241. <P>
  242. <P><DIV><#3714#><B>Theorem  4.2</B><#3714#>   
  243. <#3717#><I>The forgetful functor <tex2html_verbatim_mark>#math292#<I>U</I> : <tex2html_image_mark>#tex2html_wrap_inline3719#→<tex2html_image_mark>#tex2html_wrap_inline3720#
  244. has the left adjoint <tex2html_verbatim_mark>#math293#<I>F</I> : <tex2html_image_mark>#tex2html_wrap_inline3722#→<tex2html_image_mark>#tex2html_wrap_inline3723# where
  245. <tex2html_verbatim_mark>#math294#<I>F</I>(<tex2html_image_mark>#tex2html_wrap_inline3725#) = <tex2html_image_mark>#tex2html_wrap_inline3726#<tex2html_image_mark>#tex2html_wrap_inline3727#, and
  246. </I><P><tex2html_verbatim_mark>#math295#</P><DIV ALIGN="CENTER">
  247. <I>F</I>(<I>R</I>)(<I>x</I>) = {<I>e'</I> | ∃<I>e</I>∈<I>x</I>.(<I>e</I>, <I>e'</I>)∈<I>R</I>}
  248. </DIV><P></P><I>
  249. for a linear map <tex2html_verbatim_mark>#math296#<I>R</I> : <tex2html_image_mark>#tex2html_wrap_inline3730#→<tex2html_image_mark>#tex2html_wrap_inline3731#.</I><#3717#></DIV><P></P>
  250.  
  251.  
  252. <P>
  253. <#600#><B>Proof </B><#600#>
  254. This follows from the previous theorem and
  255. the fact that
  256. <tex2html_verbatim_mark>#math297#<I>F</I>(<I>R</I>) : <I>F</I>(<tex2html_image_mark>#tex2html_wrap_inline3733#→<I>F</I>(<tex2html_image_mark>#tex2html_wrap_inline3734#)
  257. is a partially synchronous morphism
  258. for any linear map <tex2html_verbatim_mark>#math298#<I>R</I> : <tex2html_image_mark>#tex2html_wrap_inline3736#→<tex2html_image_mark>#tex2html_wrap_inline3737#.
  259. <tex2html_image_mark>#tex2html_wrap_inline3739#
  260.  
  261. <P>
  262. Since left adjoints preserve colimits such as coproducts,
  263. categories <#605#><B>CLI</B><#605#> and <#606#><B>CPS</B><#606#> have the same 
  264. sum construction for modeling non-deterministic choices
  265. of CCS processes.
  266.  
  267. <P>
  268. The obvious next  step is to  extend  the adjunction  to stable  event
  269. structures. To make things simpler, we  work on prime event structures
  270. first.  Recall   that a   prime      event   structure is   a   triple
  271. <tex2html_verbatim_mark>#math299#<tex2html_image_mark>#tex2html_wrap_inline3741# = (<I>E</I>, <I>C</I><I>on</I>,≤), where <I>E</I> is a  set of events,
  272. partially ordered by ≤, and <I>C</I><I>on</I> is a consistency predicate
  273. which   is downwards  closed  with  respect   to ≤ (the   causal
  274. dependency order): <P><tex2html_verbatim_mark>#math300#</P><DIV ALIGN="CENTER">
  275. (<I>X</I>∈<I>C</I><I>on</I>  <tex2html_ampersand_mark>  <I>e</I>≤<I>e'</I>∈<I>X</I>) <tex2html_image_mark>#tex2html_wrap_indisplay3747# <I>X</I>∪{<I>e</I>}∈<I>C</I><I>on</I>.
  276. </DIV><P></P> Moreover,  for any   <I>e</I>∈<I>E</I>, the set
  277. <tex2html_verbatim_mark>#math301#⌈⌈<I>e</I>⌉⌉ = {<I>e'</I> | <I>e'</I>≤<I>e</I>  <tex2html_ampersand_mark>  <I>e</I> <tex2html_image_mark>#tex2html_wrap_inline3750#<I>e'</I>}
  278. is finite.
  279.  
  280. <P>
  281. Our work in Section 3 can  be easily extended to prime event
  282. structures. There is a monoidal closed category
  283. with the following linear maps as morphisms.
  284.  
  285. <P>
  286. <P><DIV><#3752#><B>Definition  4.4</B><#3752#>   
  287. <#3755#><I>Let 
  288. <tex2html_verbatim_mark>#math302#<tex2html_image_mark>#tex2html_wrap_inline3757# = ( <I>E</I>,  <I>C</I><I>on</I><SUB><tex2html_image_mark>#tex2html_wrap_inline3758#</SUB>,   <tex2html_image_mark>#tex2html_wrap_inline3759#  ),  <tex2html_image_mark>#tex2html_wrap_inline3760# = ( <I>F</I>,  <I>C</I><I>on</I><SUB><tex2html_image_mark>#tex2html_wrap_inline3761#</SUB>,   <tex2html_image_mark>#tex2html_wrap_inline3762#  ) be prime  event structures.  A linear map from
  289. <tex2html_verbatim_mark>#math303#<tex2html_image_mark>#tex2html_wrap_inline3764# to <tex2html_verbatim_mark>#math304#<tex2html_image_mark>#tex2html_wrap_inline3766# is a  relation <tex2html_verbatim_mark>#math305#<I>R</I>⊆<I>E</I>×<I>F</I> which satisfies </I><P><tex2html_verbatim_mark>#math306#</P><DIV ALIGN="CENTER">
  290.  <tex2html_image_mark>#tex2html_wrap_indisplay3769#<tex2html_image_mark>#tex2html_wrap_indisplay3770#1<tex2html_image_mark>#tex2html_wrap_indisplay3771#<tex2html_image_mark>#tex2html_wrap_indisplay3772#=0<I>pt</I><tex2html_image_mark>#tex2html_wrap_indisplay3773#$##$ ;SPMamp; $##                                    $<tex2html_image_mark>#tex2html_wrap_indisplay3774# ;SPMamp; 1.<I>Compatibility</I>:( ∀<I>i</I>∈<I>I</I> .  <I>e</I><SUB>i</SUB> <I>R</I> <I>e</I><SUB>i</SUB>' )  <tex2html_ampersand_mark>  {<I>e</I><SUB>i</SUB> | <I>i</I>∈<I>I</I>}∈<I>C</I><I>on</I><SUB><tex2html_image_mark>#tex2html_wrap_indisplay3775#</SUB> <tex2html_image_mark>#tex2html_wrap_indisplay3776# { <I>e</I><SUB>i</SUB>' | <I>i</I>∈<I>I</I> }∈<I>C</I><I>on</I><SUB><tex2html_image_mark>#tex2html_wrap_indisplay3777#</SUB>,<tex2html_image_mark>#tex2html_wrap_indisplay3778# ;SPMamp; 2.<I>Minimality</I>:( {<I>e</I><SUB>0</SUB>, <I>e</I><SUB>1</SUB>}∈<I>C</I><I>on</I><SUB><tex2html_image_mark>#tex2html_wrap_indisplay3779#</SUB>   <tex2html_ampersand_mark>  <I>e</I><SUB>0</SUB> <I>R</I> <I>e</I>  <tex2html_ampersand_mark>  <I>e</I><SUB>1</SUB> <I>R</I> <I>e</I> ) <tex2html_image_mark>#tex2html_wrap_indisplay3780# <I>e</I><SUB>0</SUB>=<I>e</I><SUB>1</SUB>,  <I>and</I><tex2html_image_mark>#tex2html_wrap_indisplay3781# ;SPMamp; 3.<I>Completeness</I>:<I>e</I> <I>R</I> <I>e'</I>   <tex2html_image_mark>#tex2html_wrap_indisplay3782# ∀<I>e</I><SUB>1</SUB>'∈⌈⌈<I>e'</I>⌉⌉∃<I>e</I><SUB>0</SUB>'≤<I>e</I>. <I>e</I><SUB>0</SUB>' <I>R</I> <I>e</I><SUB>1</SUB>'.<tex2html_image_mark>#tex2html_wrap_indisplay3783#<tex2html_image_mark>#tex2html_wrap_indisplay3784# 
  291. </DIV><P></P><I>
  292. Here <I>I</I> is a finite index set.</I><#3755#></DIV><P></P>
  293.  
  294.  
  295. <P>
  296. The definition of  partially synchronous morphisms is almost the 
  297. same on prime event structures as on stable event structures,
  298. if one recovers the enabling relation by letting
  299. <P><tex2html_verbatim_mark>#math307#</P><DIV ALIGN="CENTER">
  300. <I>X</I> <tex2html_image_mark>#tex2html_wrap_indisplay3787# <I>e</I>  <I>ifandonlyif</I>  ⌈⌈<I>e</I>⌉⌉⊆<I>X</I>.
  301. </DIV><P></P>
  302.  
  303. <P>
  304. <P><DIV><#3789#><B>Definition  4.5</B><#3789#>   
  305. <#3792#><I>Let 
  306. <tex2html_verbatim_mark>#math308#<tex2html_image_mark>#tex2html_wrap_inline3794# = ( <I>E</I><SUB>1</SUB>,  <I>C</I><I>on</I><SUB>1</SUB>,  ≤<SUB>1</SUB> )
  307. and 
  308. <tex2html_verbatim_mark>#math309#<tex2html_image_mark>#tex2html_wrap_inline3796# = (<I>E</I><SUB>2</SUB>,  <I>C</I><I>on</I><SUB>2</SUB>,  ≤<SUB>2</SUB>)
  309. be prime event structures.
  310. A partially synchronous morphism
  311.  from <tex2html_verbatim_mark>#math310#<tex2html_image_mark>#tex2html_wrap_inline3798# to
  312. <tex2html_verbatim_mark>#math311#<tex2html_image_mark>#tex2html_wrap_inline3800# is a partial function <tex2html_verbatim_mark>#math312#<I>θ</I> : <I>E</I><SUB>1</SUB>→<I>E</I><SUB>2</SUB> on
  313. on events which satisfies
  314. </I><P><tex2html_verbatim_mark>#math313#</P><DIV ALIGN="CENTER">
  315. <TABLE>
  316. <TR VALIGN="MIDDLE"><TD ALIGN="LEFT"> </TD>
  317. <TD ALIGN="LEFT">•  <I>X</I>∈<I>Con</I><SUB>1</SUB> <tex2html_image_mark>#tex2html_wrap_indisplay3805# <I>θX</I>∈<I>Con</I><SUB>2</SUB>,</TD>
  318. </TR>
  319. <TR VALIGN="MIDDLE"><TD ALIGN="LEFT"> </TD>
  320. <TD ALIGN="LEFT">•  ({ <I>e</I>, <I>e'</I> }∈<I>Con</I><SUB>1</SUB>  <tex2html_ampersand_mark>  <I>θ</I>(<I>e</I>) = <I>θ</I>(<I>e'</I>)) <tex2html_image_mark>#tex2html_wrap_indisplay3808# <I>e</I> = <I>e'</I>,  <I>and</I></TD>
  321. </TR>
  322. <TR VALIGN="MIDDLE"><TD ALIGN="LEFT"> </TD>
  323. <TD ALIGN="LEFT">•  <I>θ</I>(<I>e</I>) <I>isdefined</I> <tex2html_image_mark>#tex2html_wrap_indisplay3811# ⌈⌈<I>θ</I>(<I>e</I>)⌉⌉⊆<I>θ</I>⌈⌈<I>e</I>⌉⌉.</TD>
  324. </TR>
  325. </TABLE>
  326. </DIV><P></P><I></I><#3792#></DIV><P></P>
  327.  
  328.  
  329. <P>
  330. To get an adjunction between the category of prime event structures
  331. with linear maps and the category of prime event structures with
  332. partially synchronous morphisms, a construction <tex2html_image_mark>#tex2html_wrap_inline3813#
  333. similar to the one on coherent spaces seems necessary.
  334. For a prime event structure <tex2html_verbatim_mark>#math314#<tex2html_image_mark>#tex2html_wrap_inline3815#,
  335. the events of <tex2html_verbatim_mark>#math315#<tex2html_image_mark>#tex2html_wrap_inline3817#<tex2html_image_mark>#tex2html_wrap_inline3818# should be
  336. non-empty subsets of <I>E</I>. The definition of the
  337. consistency relation on <tex2html_verbatim_mark>#math316#<tex2html_image_mark>#tex2html_wrap_inline3821#<tex2html_image_mark>#tex2html_wrap_inline3822# is similar to
  338. the one for coherent spaces. However,
  339. it is unclear to me at this moment how to get the appropriate
  340. definition of a causal dependency order on subsets of <I>E</I> 
  341. so that a similar isomorphism as the one in Theorem 4.1 exists.
  342. None of the partial orders for powerdomains seems to work here, and the
  343. difficulty seems to be in making sure <tex2html_verbatim_mark>#math317#<tex2html_image_mark>#tex2html_wrap_inline3825#<tex2html_image_mark>#tex2html_wrap_inline3826# is a
  344. prime event structure. It could well be that everything works fine
  345. on stable event structures. However, we have to leave that as a research
  346. topic.
  347.  
  348. <P>
  349.